#!/usr/bin/env python
# -*- coding: UTF-8 -*-
'''
@Project ：图灵学习 
@File    ：18.线程池o那个的as_complated.py
@IDE     ：PyCharm 
@Author  ：ChenLiGao
@Date    ：2024-11-04 15:13
'''
import time
from concurrent.futures import ThreadPoolExecutor, as_completed


def get_html(time_attr):
    time.sleep(time_attr)
    print(f"获取网站页数成功：{time_attr}")
    return time_attr

time_attr_list = [3, 1, 4, 2]

pool = ThreadPoolExecutor(max_workers=2)

future_list = [pool.submit(get_html, time_attr) for time_attr in time_attr_list]

# for future in future_list: # 如果前面一个任务没有完成则无法获取后一个任务
#     print(future.result())

for future in as_completed(future_list):
    # 如果其中的任务已经拿到返回值则立即返回
    print("任务返回值：", future.result())